Skip to content

DAOS-18613 container: Add pool UUID to cont_op_in (#17921)#18209

Draft
liw wants to merge 1 commit into
release/2.8from
liw/cont_op_in-2.8
Draft

DAOS-18613 container: Add pool UUID to cont_op_in (#17921)#18209
liw wants to merge 1 commit into
release/2.8from
liw/cont_op_in-2.8

Conversation

@liw
Copy link
Copy Markdown
Contributor

@liw liw commented May 11, 2026

Current cont_op_in types do not include a pool UUID field. An engine receiving such a request has to obtain the pool UUID by looking up the pool handle. If the handle is not cached locally, the engine is unable to fetch the pool handle from the PS because it doesn't have the pool UUID. Hence, we need to add a pool UUID field to a new version of cont_op_in.

This patch introduces version 9 (v9) of the container RPC protocol:

  • In v9, cont_op_v9_in includes the pool UUID field ci_pool. - All requests using a cont_op_in type gets a v9 version.
    • Engine-to-engine CONT_PROP_SET_BYLABEL is changed directly.
    • cont_prop_set_v9_in no longer has cpsi_pool_uuid, for the new cpsi_op.ci_pool has that.
    • cont_tgt_query_in no longer contains the pool handle UUID. This engine-to-engine request is changed directly.
  • The v8 protocol remains unchanged.
  • The v7 and earlier stuff is removed.
  • Unnecessary opc and cont_proto_ver parameters are removed.
  • Unnecessary ds_cont_op_handler_{v6,v7,v8} are removed.

Steps for the author:

  • Commit message follows the guidelines.
  • Appropriate Features or Test-tag pragmas were used.
  • Appropriate Functional Test Stages were run.
  • At least two positive code reviews including at least one code owner from each category referenced in the PR.
  • Testing is complete. If necessary, forced-landing label added and a reason added in a comment.

After all prior steps are complete:

  • Gatekeeper requested (daos-gatekeeper added as a reviewer).

Current cont_op_in types do not include a pool UUID field. An engine
receiving such a request has to obtain the pool UUID by looking up the
pool handle. If the handle is not cached locally, the engine is unable
to fetch the pool handle from the PS because it doesn't have the pool
UUID. Hence, we need to add a pool UUID field to a new version of
cont_op_in.

This patch introduces version 9 (v9) of the container RPC protocol:

  - In v9, cont_op_v9_in includes the pool UUID field ci_pool.
      - All requests using a cont_op_in type gets a v9 version.
	  - Engine-to-engine CONT_PROP_SET_BYLABEL is changed directly.
      - cont_prop_set_v9_in no longer has cpsi_pool_uuid, for the new
	cpsi_op.ci_pool has that.
      - cont_tgt_query_in no longer contains the pool handle UUID. This
	engine-to-engine request is changed directly.
  - The v8 protocol remains unchanged.
  - The v7 and earlier stuff is removed.
  - Unnecessary opc and cont_proto_ver parameters are removed.
  - Unnecessary ds_cont_op_handler_{v6,v7,v8} are removed.

Signed-off-by: Li Wei <liwei@hpe.com>
@github-actions
Copy link
Copy Markdown

Ticket title is 'daos_test/suite.py:DaosCoreTest.test_daos_drain_simple - DRAIN16: 0x16 != 0 daos_drain_simple.c:890: error: Failure!'
Status is 'In Progress'
Labels: '2.6.4-aurora.p5,ci_2.6_daily,pr_test,scrubbed_2.8'
Job should run at elevated priority (1)
https://daosio.atlassian.net/browse/DAOS-18613

@github-actions github-actions Bot added the priority Ticket has high priority (automatically managed) label May 11, 2026
@liw liw added the clean-cherry-pick Cherry-pick from another branch that did not require additional edits label May 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clean-cherry-pick Cherry-pick from another branch that did not require additional edits priority Ticket has high priority (automatically managed)

Development

Successfully merging this pull request may close these issues.

1 participant